Route-based modifications to a map

ABSTRACT

Systems and methods for applying one or more route-based modifications to a map are provided. In some aspects, a system includes a pathfinder module configured to determine a primary route from a beginning point to a destination point on the map. The pathfinder module is further configured to generate one or more primary modifications to the map based on the primary route. The system also includes a restyling module configured to apply the primary route and the one or more primary modifications to the map. The one or more primary modifications include at least one of a) adding a first object to the map that would otherwise be excluded from the map if the primary route is not applied to the map and b) excluding a second object from the map that would otherwise be added to the map if the primary route is not applied to the map.

FIELD

The subject technology generally relates to mapping applications and, inparticular, relates to route-based modifications to a map.

BACKGROUND

Mapping applications typically display a large amount of information toa user when the user requests directions from a beginning point to adestination point. This information may include various points ofinterest around a given route from the beginning point to thedestination point, in addition to street names for every single streetnear the given route. However, this information may be redundant and/ornot necessarily relevant to the user. As a result, the large amount ofinformation displayed on the map may be both unhelpful and distractingto the user.

SUMMARY

According to various aspects of the subject technology, a system forapplying one or more route-based modifications to a map is provided. Thesystem comprises a pathfinder module configured to determine a primaryroute from a beginning point to a destination point on the map. Thepathfinder module is further configured to generate one or more primarymodifications to the map based on the primary route. The system alsocomprises a restyling module configured to apply the primary route andthe one or more primary modifications to the map. The one or moreprimary modifications include at least one of a) adding a first objectto the map that would otherwise be excluded from the map if the primaryroute is not applied to the map and b) excluding a second object fromthe map that would otherwise be added to the map if the primary route isnot applied to the map. The first object includes a restyling of alandmark.

According to various aspects of the subject technology, acomputer-implemented method for applying one or more route-basedmodifications to a map is provided. The method comprises determining aprimary route from a beginning point to a destination point on the map.The method also comprises generating one or more primary modificationsto the map based on the primary route. The method also comprisesapplying the primary route and the one or more primary modifications tothe map. The one or more primary modifications include at least one ofa) adding a first object to the map that would otherwise be excludedfrom the map if the primary route is not applied to the map and b)excluding a second object from the map that would otherwise be added tothe map if the primary route is not applied to the map. The method alsocomprises determining an alternate route from the beginning point to thedestination point, and generating one or more alternate modifications tothe map based on the alternate route. The method also comprises applyingthe alternate route and the one or more alternate modifications to themap. The one or more alternate modifications include at least one of i)adding a third object to the map that would otherwise be excluded fromthe map if the alternate route is not applied to the map and ii)excluding a fourth object from the map that would otherwise be added tothe map if the alternate route is not applied to the map.

According to various aspects of the subject technology, amachine-readable medium encoded with executable instructions forapplying one or more route-based modifications to a map is provided. Theinstructions comprising code for determining a primary route from abeginning point to a destination point on the map. The instructions alsocomprise code for generating one or more primary modifications to themap based on at least one of the primary route, a mode of transportationfrom the beginning point to the destination point, a zoom level of themap, a type of destination at the destination point, and a user of themap. The instructions also comprise code for applying the primary routeand the one or more primary modifications to the map. The one or moreprimary modifications include at least one of a) adding a first objectto the map that would otherwise be excluded from the map if the primaryroute is not applied to the map and b) excluding a second object fromthe map that would otherwise be added to the map if the primary route isnot applied to the map. The instructions also comprise code fordetermining an alternate route from the beginning point to thedestination point, and code for generating one or more alternatemodifications to the map based on the alternate route. The instructionsalso comprise code for applying the alternate route and the one or morealternate modifications to the map, wherein the one or more alternatemodifications include at least one of i) adding a third object to themap that would otherwise be excluded from the map if the alternate routeis not applied to the map and ii) excluding a fourth object from the mapthat would otherwise be added to the map if the alternate route is notapplied to the map. The one or more primary modifications, the one ormore alternate modifications, the primary route, and the alternate routeare applied at the same time.

Additional features and advantages of the subject technology will be setforth in the description below, and in part will be apparent from thedescription, or may be learned by practice of the subject technology.The advantages of the subject technology will be realized and attainedby the structure particularly pointed out in the written description andclaims hereof as well as the appended drawings.

It is to be understood that both the foregoing general description andthe following detailed description are exemplary and explanatory and areintended to provide further explanation of the invention as claimed.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are included to provide furtherunderstanding of the subject technology and are incorporated in andconstitute a part of this specification, illustrate aspects of thesubject technology and together with the description serve to explainthe principles of the subject technology.

FIG. 1 illustrates an example of a system for applying one or moreroute-based modifications to a map, in accordance with various aspectsof the subject technology.

FIG. 2 illustrates an example of a method for applying one or moreroute-based modifications to a map, in accordance with various aspectsof the subject technology.

FIG. 3 illustrates an example of a map, in accordance with variousaspects of the subject technology.

FIG. 4 is a block diagram illustrating components of a controller, inaccordance with various aspects of the subject disclosure.

DETAILED DESCRIPTION

In the following detailed description, numerous specific details are setforth to provide a full understanding of the subject technology. It willbe apparent, however, to one ordinarily skilled in the art that thesubject technology may be practiced without some of these specificdetails. In other instances, well-known structures and techniques havenot been shown in detail so as not to obscure the subject technology.

According to certain aspects of the subject technology, systems andmethods are provided for applying one or more route-based modificationsto a map such that information displayed to the user on the map isrelevant to the user's request for directions. The user, via a client(e.g., a laptop computer, a desktop computer, a netbook, a mobiledevice, a tablet, etc.), may submit a request to a server for directionsfrom a beginning point to a destination point. A pathfinder module ofthe server may receive the request and generate a primary route from thebeginning point to the destination point. The pathfinder module may alsogenerate one or more modifications to the map so that informationrelevant to the user is displayed while information that is not relevantto the user is excluded from the map. A restyling module of the servermay then apply the primary route and the one or more modifications tothe map, and then provide this map to the client.

The one or more modifications to the map may be specific to the primaryroute, and therefore can enable only information relevant to the primaryroute to be displayed to the user. For example, major streets, cities,and/or landmarks that are near or along the primary route may bedisplayed to the user, while lesser known streets and cities are notdisplayed. In some aspects, only points of interest that are relevant tothe destination point are displayed. For example, if the destinationpoint is a restaurant, then other similar restaurants may be displayednear the primary route, in addition to parking structures near thedestination point. In some aspects, the pathfinder module may generatean alternate route between the beginning point and the destinationpoint. Other modifications to the map based on this alternate route mayalso be displayed on the map.

FIG. 1 illustrates an example of system 100 for applying one or moreroute-based modifications to a map, in accordance with various aspectsof the subject technology. System 100 is an example of the server thatprovides the map, on which the primary route and the one or moremodifications are applied, to client 106. Client 106, for example, maycomprise a web browser that allows the user to view and use the map.System 100 comprises pathfinder module 102 and restyling module 104.These modules may be in communication with one another. In some aspects,the modules may be implemented in software (e.g., subroutines and code).In some aspects, some or all of the modules may be implemented inhardware (e.g., an Application Specific Integrated Circuit (ASIC), aField Programmable Gate Array (FPGA), a Programmable Logic Device (PLD),a controller, a state machine, gated logic, discrete hardwarecomponents, or any other suitable devices) and/or a combination of both.Additional features and functions of these modules according to variousaspects of the subject technology are further described in the presentdisclosure.

FIG. 2 illustrates an example of method 200 for applying one or moreroute-based modifications to a map, in accordance with various aspectsof the subject technology. As discussed above, a user may submit arequest, via client 106, to system 100 for directions from a beginningpoint to a destination point. Pathfinder module 102 may receive therequest and according to step S202, determine a primary route from thebeginning point to the destination point on the map.

FIG. 3 illustrates an example of map 300 and primary route 302 betweenbeginning point 304 and destination point 306, in accordance withvarious aspects of the subject technology. As shown, primary route 302runs along Street A, Street B, Street C, Street D, and Street E beforereaching destination point 306. After determining primary route 302,pathfinder module 102 may transmit primary route 302 and a tokenrepresenting primary route 302 to client 106.

With knowledge of primary route 302, client 106 may then be able todetermine which portions of map 300 (e.g., map tiles) are needed todisplay primary route 302. For example, the web browser of client 106(e.g., a Java-scripted web browser) may load a set of map tiles on whichprimary route 302 can be displayed. In this regard, client 106 mayprovide primary route 302, the token representing primary route 302,and/or the set of map tiles to restyling module 104. Restyling module104 may provide this information to pathfinder module 102, which cangenerate one or more primary modifications to map 300 with knowledge ofwhich portions of map 300 may display primary route 302.

Referring back to FIGS. 1 and 2, according to step S204, pathfindermodule 102 may generate one or more primary modifications to map 300based on primary route 302. According to certain aspects, the one ormore primary modifications may include at least one of a) adding a firstobject to map 300 that would otherwise be excluded from map 300 ifprimary route 302 is not applied to map 300 and b) excluding a secondobject from map 300 that would otherwise be added to map 300 if primaryroute 302 is not applied to map 300. The one or more modifications mayallow only information relevant to primary route 302 to be displayed onmap 300. For example, the first object may include at least one of astreet name, a point of interest, a distance to the destination point,an estimated time of arrival at the destination point, a restyling of alandmark, a traffic hazard indicator, a traffic indicator, and otherobjects relevant to the user's travel from beginning point 304 todestination point 306. The second object may include at least one of astreet name, a point of interest, and other objects that may not berelevant to the user and can be excluded.

FIG. 3 illustrates examples of objects that may be added to and/orexcluded from map 300 as primary modifications. For example, the labelsof Street A, Street B, Street C, Street D, and Street E may be added, asthe user may need to travel along these streets to reach destinationpoint 306. A label for a street that is not relevant to primary route302 may be excluded from map 300, such as the label for Street F (shownwith a strikethrough to indicate that it has been excluded from map300).

According to certain aspects, landmark 308 may be added as a primarymodification. Landmark 308 is shown as a building. However, other typesof landmarks can be added such as a bridge, a sign, a park, or otherartificial or natural structures. In some aspects, a primarymodification to map 300 may comprise a restyling of landmark 308. Forexample, landmark 308 may be highlighted, colored, or shaded to directthe user's attention to landmark 308. This may be useful, for example,if primary route 302 is used to guide the user to make a certain actionat landmark 308. By highlighting, coloring, and/or shading landmark 308,the user is able to see on map 300 where to take the action (e.g.,turning left at landmark 308). This landmark-based guidance may beparticularly useful in areas where street signs are unavailable or notclearly visible.

In some aspects, the one or more primary modifications can be based onother criteria such as a mode of transportation from beginning point 304to destination point 306, a zoom level of map 300, a type of destinationat destination point 306, and/or the user of map 300. For example, ifthe mode of transportation by the user to destination point 306 is byvehicle, then point of interest 310 that represents a parking lot or agas station may be added as a primary modification. If the mode oftransportation is by walking, then point of interest 310 may beexcluded, because the parking lot or gas station would presumably beirrelevant to the user.

In another example, a primary modification may be added to or excludedfrom map 300 depending on a zoom level of map 300. If the user is zoomedin closer to a map, then objects that are farther away from primaryroute 302 may be excluded. For example, point of interest 312 may beexcluded from map 300 because point of interest 312 is relativelyfarther away from primary route 302 compared to point of interest 310.

A primary modification can also be based on the type of destination atdestination point 306. An object that is similar to the type ofdestination at destination point 306 may be added. For example, ifdestination point 306 is a restaurant, then other similar restaurants(e.g., in terms of the food of the restaurant, a size of the restaurant,and/or the price of the restaurant) can be added to map 300. Point ofinterest 314 may represent an object that is similar to the type ofdestination at destination point 306.

In some aspects, a primary modification can be based on who the user is.If an object is relevant to the user in some manner, then it can beadded to map 300 as well. For example, point of interest 316 may bespecific to the user, and may represent a residence of the user's friendor relative, the user's workplace or school, a place that the user haspreviously indicated an interest in (e.g., a park, a store, etc.), orother places relevant to the user.

Although primary route 302 and the one or more primary modificationshave been described, pathfinder module 102 may also determine alternateroute 318 from beginning point 304 to destination point 306 and generateone or more alternate modifications to map 300 based on alternate route318. Alternate route 318 may provide the user with an alternate way totravel from beginning point 304 to destination point 306 in a mannerthat can be more beneficial than traveling by primary route 302. Forexample, alternate route 318 may be useful to avoid traffic or traffichazards along primary route 302, to allow the user to arrive atdestination point 306 sooner than traveling along primary route 302, orto allow the user to travel by another point of interest 320 that may bespecific to the user. The one or more alternate modifications may be thesame type of modifications to alternate route 318 as the one or moreprimary modifications are to primary route 302.

Once pathfinder module 102 has generated the one or more primarymodifications and/or the one or more alternate modifications, pathfindermodule 102 may provide the one or more primary modifications and/or theone or more alternate modifications to restyling module 104. Returningto FIGS. 1 and 2, according to step S206, restyling module 104 may applyprimary route 302 and the one or more primary modifications to map 300.For example, restyling module 104 may draw, render, or otherwiseintegrate primary route 302 and the one or more primary modificationsonto map 300. This restyled map 300 may then be transmitted to client106, to allow the user to use the restyled map 300 to travel frombeginning point 304 to destination point 306.

In some aspects, restyling module 104 may apply the one or more primarymodifications to map 300 when primary route 302 is applied to map 300.For example, restyling module 104 may add the first object to map 300when primary route 302 is applied to map 300, and/or exclude the secondobject from map 300 when primary route 302 is applied to map 300.

According to certain aspects, restyling module 104 may also applyalternate route 318 and the one or more alternate modifications to map300. Restyling module 104 may apply primary route 302, alternate route318, the one or more primary modifications, and/or the one or morealternate modifications at the same time. Thus, at least two or more ofprimary route 302, alternate route 318, the one or more primarymodifications, and the one or more alternate modifications may bedisplayed to the user on map 300. In some aspects, primary route 302 andalternate route 318 may be in a different styling from one another. Forexample, primary route 302 and alternate route 318 may be in differentcolors, shadings, or patterns.

FIG. 4 is a block diagram illustrating components of controller 400, inaccordance with various aspects of the subject disclosure. Controller400 comprises processor module 404, storage module 410, input/output(I/O) module 408, memory module 406, and bus 402. Bus 402 may be anysuitable communication mechanism for communicating information.Processor module 404, storage module 410, I/O module 408, and memorymodule 406 are coupled with bus 402 for communicating informationbetween any of the modules of controller 400 and/or information betweenany module of controller 400 and a device external to controller 400.For example, information communicated between any of the modules ofcontroller 400 may include instructions and/or data. In some aspects,bus 402 may be a universal serial bus. In some aspects, bus 302 mayprovide Ethernet connectivity.

In some aspects, processor module 404 may comprise one or moreprocessors, where each processor may perform different functions orexecute different instructions and/or processes. For example, one ormore processors may execute instructions for operating system 100, oneor more processors may execute instructions for applying one or moreroute-based modifications to a map (e.g., method 200 in FIG. 2), and oneor more processors may execute instructions for input/output functions.

Memory module 406 may be random access memory (“RAM”) or other dynamicstorage devices for storing information and instructions to be executedby processor module 404. Memory module 406 may also be used for storingtemporary variables or other intermediate information during executionof instructions by processor 404. In some aspects, memory module 406 maycomprise battery-powered static RAM, which stores information withoutrequiring power to maintain the stored information. Storage module 410may be a magnetic disk or optical disk and may also store informationand instructions. In some aspects, storage module 410 may comprise harddisk storage or electronic memory storage (e.g., flash memory). In someaspects, memory module 406 and storage module 410 are both amachine-readable medium.

Controller 400 is coupled via I/O module 408 to a user interface forproviding information to and receiving information from an operator ofsystem 100. For example, the user interface may be a cathode ray tube(“CRT”) or LCD monitor for displaying information to an operator. Theuser interface may also include, for example, a keyboard or a mousecoupled to controller 400 via I/O module 408 for communicatinginformation and command selections to processor module 404.

According to various aspects of the subject disclosure, methodsdescribed herein are executed by controller 400. Specifically, processormodule 404 executes one or more sequences of instructions contained inmemory module 406 and/or storage module 410. In one example,instructions may be read into memory module 406 from anothermachine-readable medium, such as storage module 410. In another example,instructions may be read directly into memory module 406 from I/O module408, for example from an operator of system 100 via the user interface.Execution of the sequences of instructions contained in memory module406 and/or storage module 410 causes processor module 404 to performmethods to apply one or more route-based modifications to a map. Forexample, a computational algorithm for applying one or more route-basedmodifications to a map may be stored in memory module 406 and/or storagemodule 410 as one or more sequences of instructions. Information theprimary route, the one or more primary modifications, the tokenrepresenting the primary route, the alternate route, the one or morealternate modifications, or other suitable information may becommunicated from processor module 404 to memory module 406 and/orstorage module 410 via bus 402 for storage. In some aspects, theinformation may be communicated from processor module 404, memory module406, and/or storage module 410 to I/O module 408 via bus 402. Theinformation may then be communicated from I/O module 408 to an operatorof system 100 via the user interface.

One or more processors in a multi-processing arrangement may also beemployed to execute the sequences of instructions contained in memorymodule 406 and/or storage module 410. In some aspects, hard-wiredcircuitry may be used in place of or in combination with softwareinstructions to implement various aspects of the subject disclosure.Thus, aspects of the subject disclosure are not limited to any specificcombination of hardware circuitry and software.

The term “machine-readable medium,” or “computer-readable medium,” asused herein, refers to any medium that participates in providinginstructions to processor module 404 for execution. Such a medium maytake many forms, including, but not limited to, non-volatile media, andvolatile media. Non-volatile media include, for example, optical ormagnetic disks, such as storage module 410. Volatile media includedynamic memory, such as memory module 406. Common forms ofmachine-readable media or computer-readable media include, for example,floppy disk, a flexible disk, hard disk, magnetic tape, any othermagnetic medium, a CD-ROM, DVD, any other optical medium, punch cards,paper tape, any other physical mediums with patterns of holes, a RAM, aPROM, an EPROM, a FLASH EPROM, any other memory chip or cartridge, orany other medium from which a processor can read.

The foregoing description is provided to enable a person skilled in theart to practice the various configurations described herein. While thesubject technology has been particularly described with reference to thevarious figures and configurations, it should be understood that theseare for illustration purposes only and should not be taken as limitingthe scope of the subject technology.

There may be many other ways to implement the subject technology.Various functions and elements described herein may be partitioneddifferently from those shown without departing from the scope of thesubject technology. Various modifications to these configurations willbe readily apparent to those skilled in the art, and generic principlesdefined herein may be applied to other configurations. Thus, manychanges and modifications may be made to the subject technology, by onehaving ordinary skill in the art, without departing from the scope ofthe subject technology.

It is understood that the specific order or hierarchy of steps in theprocesses disclosed is an illustration of exemplary approaches. Basedupon design preferences, it is understood that the specific order orhierarchy of steps in the processes may be rearranged. Some of the stepsmay be performed simultaneously. The accompanying method claims presentelements of the various steps in a sample order, and are not meant to belimited to the specific order or hierarchy presented.

A phrase such as “an aspect” does not imply that such aspect isessential to the subject technology or that such aspect applies to allconfigurations of the subject technology. A disclosure relating to anaspect may apply to all configurations, or one or more configurations.An aspect may provide one or more examples of the disclosure. A phrasesuch as an “aspect” may refer to one or more aspects and vice versa. Aphrase such as an “embodiment” does not imply that such embodiment isessential to the subject technology or that such embodiment applies toall configurations of the subject technology. A disclosure relating toan embodiment may apply to all embodiments, or one or more embodiments.An embodiment may provide one or more examples of the disclosure. Aphrase such an “embodiment” may refer to one or more embodiments andvice versa. A phrase such as a “configuration” does not imply that suchconfiguration is essential to the subject technology or that suchconfiguration applies to all configurations of the subject technology. Adisclosure relating to a configuration may apply to all configurations,or one or more configurations. A configuration may provide one or moreexamples of the disclosure. A phrase such as a “configuration” may referto one or more configurations and vice versa.

Furthermore, to the extent that the term “include,” “have,” or the likeis used in the description or the claims, such term is intended to beinclusive in a manner similar to the term “comprise” as “comprise” isinterpreted when employed as a transitional word in a claim.

The word “exemplary” is used herein to mean “serving as an example,instance, or illustration.” Any embodiment described herein as“exemplary” is not necessarily to be construed as preferred oradvantageous over other embodiments.

A reference to an element in the singular is not intended to mean “oneand only one” unless specifically stated, but rather “one or more.” Theterm “some” refers to one or more. All structural and functionalequivalents to the elements of the various configurations describedthroughout this disclosure that are known or later come to be known tothose of ordinary skill in the art are expressly incorporated herein byreference and intended to be encompassed by the subject technology.Moreover, nothing disclosed herein is intended to be dedicated to thepublic regardless of whether such disclosure is explicitly recited inthe above description.

What is claimed is:
 1. A system for applying one or more route-basedmodifications to a map, the system comprising: a pathfinder module,implemented using one or more processors, configured to: determine aprimary route from a beginning point to a destination point on the mapand generate one or more primary modifications to the map based on theprimary route, and determine an alternate route from the beginning pointto the destination point and generate one or more alternatemodifications to the map based on the alternate route, wherein the oneor more primary modifications or the one or more alternate modificationsdisplay information relevant to a user or exclude information notrelevant to the user from the map; and a restyling module, implementedusing the one or more processors, configured to: apply the primary routeand the one or more primary modifications to the map, wherein the one ormore primary modifications include at least one of a) adding a firstobject to the map that would otherwise be excluded from the map if theprimary route is not applied to the map and b) excluding a second objectfrom the map that would otherwise be added to the map if the primaryroute is not applied to the map, apply the alternate route and the oneor more alternate modifications to the map, wherein the one or morealternate modifications include at least one of i) adding a third objectto the map that would otherwise be excluded from the map if thealternate route is not applied to the map and ii) excluding a fourthobject from the map that would otherwise be added to the map if thealternate route is not applied to the map, wherein the first objectincludes a restyling of a landmark, wherein the restyling module isconfigured to apply the one or more primary modifications, the one ormore alternate modifications, the primary route, and the alternate routeat the same time.
 2. The system of claim 1, wherein the restyling moduleis configured to apply the one or more primary modifications to the mapwhen the primary route is applied to the map.
 3. The system of claim 1,wherein the first object further includes at least one of a street name,a point of interest, a distance to the destination point, an estimatedtime of arrival at the destination point, a traffic hazard indicator,and a traffic indicator.
 4. The system of claim 3, wherein the point ofinterest is user-specific.
 5. The system of claim 1, wherein thelandmark comprises at least one of an artificial structure and a naturalstructure.
 6. The system of claim 1, wherein the restyling of thelandmark comprises at least one of a coloring and a shading of thelandmark.
 7. The system of claim 1, wherein the second object includesat least one of a street name and a point of interest.
 8. The system ofclaim 1, wherein the pathfinder module is configured to generate the oneor more primary modifications based on at least one of a mode oftransportation from the beginning point to the destination point, a zoomlevel of the map, a type of destination at the destination point, andthe user of the map.
 9. The system of claim 1, wherein the pathfindermodule is further configured to determine the alternate route from thebeginning point to the destination point, and to generate one or morealternate modifications to the map based on the alternate route.
 10. Thesystem of claim 9, wherein restyling module is configured to apply theprimary route and the alternate route in a different styling from oneanother.
 11. A computer-implemented method for applying one or moreroute-based modifications to a map, the method comprising: determining,using one or more processors, a primary route from a beginning point toa destination point on the map; generating, using the one or moreprocessors, one or more primary modifications to the map based on theprimary route; applying, using the one or more processors, the primaryroute and the one or more primary modifications to the map, wherein theone or more primary modifications include at least one of a) adding afirst object to the map that would otherwise be excluded from the map ifthe primary route is not applied to the map and b) excluding a secondobject from the map that would otherwise be added to the map if theprimary route is not applied to the map; determining, using the one ormore processors, an alternate route from the beginning point to thedestination point; generating, using the one or more processors, one ormore alternate modifications to the map based on the alternate route;and applying the alternate route and the one or more alternatemodifications to the map, wherein the one or more primary modificationsor the one or more alternate modifications display information relevantto a user or exclude information not relevant to the user from the map,wherein the one or more alternate modifications include at least one ofi) adding a third object to the map that would otherwise be excludedfrom the map if the alternate route is not applied to the map and ii)excluding a fourth object from the map that would otherwise be added tothe map if the alternate route is not applied to the map, wherein theone or more primary modifications, the one or more alternatemodifications, the primary route, and the alternate route are applied atthe same time.
 12. The method of claim 11, wherein the one or moreprimary modifications are generated based on at least one of a mode oftransportation from the beginning point to the destination point, a zoomlevel of the map, a type of destination at the destination point, and auser of the map.
 13. The method of claim 11, wherein the first objectincludes a restyling of a landmark, the restyling of the landmarkcomprising at least one of a coloring and a shading of the landmark. 14.A non-transitory machine-readable medium comprising instructions storedtherein, which when executed by one or more processors, cause the one ormore processors to perform operations comprising: determining, using theone or more processors, a primary route from a beginning point to adestination point on the map; generating, using the one or moreprocessors, one or more primary modifications to the map based on atleast one of the primary route, a mode of transportation from thebeginning point to the destination point, a zoom level of the map, atype of destination at the destination point, and a user of the map;applying, using the one or more processors, the primary route and theone or more primary modifications to the map, wherein the one or moreprimary modifications include at least one of a) adding a first objectto the map that would otherwise be excluded from the map if the primaryroute is not applied to the map and b) excluding a second object fromthe map that would otherwise be added to the map if the primary route isnot applied to the map; determining, using the one or more processors,an alternate route from the beginning point to the destination point;generating, using the one or more processors, one or more alternatemodifications to the map based on the alternate route; and applying,using the one or more processors, the alternate route and the one ormore alternate modifications to the map, wherein the one or more primarymodifications or the one or more alternate modifications displayinformation relevant to a user or exclude information not relevant tothe user from the map, wherein the one or more alternate modificationsinclude at least one of i) adding a third object to the map that wouldotherwise be excluded from the map if the alternate route is not appliedto the map and ii) excluding a fourth object from the map that wouldotherwise be added to the map if the alternate route is not applied tothe map, wherein the one or more primary modifications, the one or morealternate modifications, the primary route, and the alternate route areapplied at the same time.